Intelligent Keyboard

ABSTRACT

An intelligent keyboard for mobile devices and other computer devices. This intelligent keyboard provides the user with suggestions of relevant words or phrases that can be used to start or continue a conversation on text message, email and/or various web applications. The intelligent keyboard provides conversation suggestions that are appropriate for given application contexts, categories, and conversation types. The intelligent keyboard uses user generated content from application users, usage history, profile data, dialogue data, platform generated content from the system managers/owners, content collected from various websites/integrations and natural language content generated by artificial intelligence. Content is ranked by preference, contextual suitability, and performance. Content is further tagged for application context. User behavior, user data and artificial intelligence models continuously update the system so that the relevance and performance of keyboard content is optimized.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to an intelligent keyboard that providessuggested phrases to start conversations on computing devices.Electronic communication via texting, iMessage, email, Slack, MicrosoftTeams, dating applications and many other applications has becomeextremely common place in today's virtual world. While word suggestions,auto-complete and auto-correction are well known in today's mobiledevices such as Apple's iPhone, Google's Android devices and variouslaptop/desktop computer application, today's devices do not suggestentire phrases to start conversations based on the category ofconversation and intent of the user. The present invention relates tointelligent keyboards for installation on mobile operating systems likeApple iOS and Google Android, or on desktop/laptop operating systemslike Apple MacOS, Microsoft Windows, Linux and Unix.

SUMMARY OF THE INVENTION

The present invention is an intelligent keyboard for mobile devices.This intelligent keyboard provides the user with suggestions of relevantwords or phrases that can be used to start or continue a conversation ontext message, email and/or various web applications. The intelligentkeyboard provides conversation suggestions that are appropriate forgiven application contexts, categories and conversation types. Theintelligent keyboard uses user generated content from application users,usage history, profile data, dialogue data, platform generated contentfrom the system managers/owners, content collected from variouswebsites/integrations and natural language content generated byartificial intelligence. Content is ranked by preference, contextualsuitability and performance. Content is further tagged for applicationcontext. User behavior, user data and artificial intelligence modelscontinuously update the system so that the relevance and performance ofkeyboard content is optimized.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of the intelligent keyboard system.

FIG. 2 is a block diagram of the human generated content module.

FIG. 3 is a block diagram of the Artificial Intelligence Models module.

FIG. 4 is a block diagram of the integrations module.

FIG. 5 is a block diagram of the web content module.

FIG. 6 is a block diagram of the API/app servers module.

FIG. 6 is a block diagram of the matching algorithm.

FIG. 7 is a block diagram of the iOS App.

FIG. 8 is a screenshot of the intelligent keyboard.

FIG. 9 is a block diagram of the web app.

FIG. 10 is a block diagram application of the module database.

FIG. 11 is a block diagram of the artificial intelligence database.

FIG. 12 shows screenshots of the iOS app configuration screens.

FIG. 13 shows screenshots of the various states of the intelligentkeyboard.

FIG. 14 shows screenshots of suggested phrases provided by theintelligent keyboard.

FIG. 15 shows a flow chart of the pro mode of the intelligent keyboard.

FIG. 16 shows a flow chart of the AI mode of the intelligent keyboard.

FIG. 17 shows a view of the complete intelligent keyboard system.

DESCRIPTION OF THE PREFERRED EMBODIMENT

The following detailed description refers to the preferred embodiment ofthe disclosed invention as shown in the attached figures and in thebelow description. This detailed description is not meant to limit thescope of the invention in any way but is intended to disclose thepreferred embodiment/best mode of the invention at the time of filingthis application.

FIG. 1 shows a block diagram of the complete intelligent keyboard system1. The major components of the system include Human Generated Content 2.This block selects, ranks and stores content created by humans for thesystem, both platform owners and users. Integrations 4 functions tocapture content from other applications and websites utilized by theuser on their particular mobile device. Artificial Intelligence Models 3provides logic and connectivity to models that have been trained usingmachine learning. Artificial intelligence models are defined as anyfunction that has been trained by one or more machine learningalgorithms using data. These models can be trained by third parties, bythe patent holders or some combination thereof. Artificial intelligencedatabase 100 is the stored, structured data used to create, manage,train, deploy and maintain artificial intelligence models 3. Web content5 identifies and collects relevant information from third party websitesthat is utilized within the platform. The platform is connected to theinternet 6. API/App Servers 7 provides application servers that controlthe platform and various functions as well as application programminginterfaces (API) to various third party functionality. iOS app 8 is theiOS application that is installed on the user device. This applicationcontrols keyboard extension 11 which is the actual intelligent keyboardon the user's device. Web application 9 allows the platform owner tomake configuration changes to the system. Lastly, database 10 stores allthe keyboard content, user profiles and configurations for the platform.The intelligent keyboard disclosed in this application suggests andsends messages suggested to the user. In the preferred embodiment,messages are in the form of a complete phrase, but for purposes of thisapplication a message is defined as any combination of one or morecharacters that may or may not form a word or phrase.

FIG. 2 shows a detailed block diagram of Human Generated Content 2. Inplatform generated content block 12, platform owner and/or operatorgenerates and stores specific keyboard content written for the platform.This includes specific phrases that are appropriate for specificcontexts such as dating applications, texting, email, slack and socialmedia. An example of this content might include editorially driven andtested conversation starters for dating applications. Such content isdeveloped to match a variety of situations, user content (from thecontext of the conversation, i.e. dating, email, text, Slack and socialmedia) and user tones.

Phrases on the platform are also organized by Category. Categoriesinclude Favorites, Advice, Openers, Banter, Connect/Disconnect andothers. Under each Category, there are several conversation types, knownas Intents. These Intents include, but are not limited to, curious,ridiculous, flirty, dog, nature, challenge, basic, date at home andtoday. These are examples of Categories and Intents included in thepreferred embodiment, but any number of additional categories or typesare anticipated in the invention. Under each Category, several completephrases are provided to start or continue specific conversations.

The keyboard is designed to be an intent-based communication assistant.The purpose of the keyboard is to assist a user who has an idea of whatthey want to say, i.e. an intent, but not the specific words to make thestatement. In this situation, the user can tap an intent and bepresented with a list of content to choose from, and messages to send.The user can then choose the content they prefer and send the messagepopulated with the chosen content.

The message lifecycle, i.e. the cognitive steps for sending a message,is generally the same for each message. The user's cognitive steps foreach message are: (1) determine intent for the message, (2) developspecific words that express the intent, (3) type those letters/words,(4) edit and (5) send the message. The intelligent keyboard simplifiessteps 2 through 5 of the process. Using the intelligent keyboard, theuser can start with an intent and skip directly to sending anappropriate message

User generated content 13 includes content generated by users on theplatform. The platform collects and tags content generated by all theusers on the platform and utilizes ranking algorithm 14 to determine thetop performing phrases across the platform. Phrase performance on theplatform is determined by a number of factors, including category views,interaction frequency for each category, phrase views, phrase sends,peak usage times (by day of week and time of day), user voting oncontent by an up or down vote and many other factors. Top performingphrases are published across the platform so that any user can accessthe phrase from the keyboard as a conversation suggestion.

For purposes of this application, message data means any amount of data,no matter how large or small, that forms all or part of a message.Message data stored in human generated content 2 is stored in structureddatabases well known in the art. These structured databases allow easysearch, location and access to message data utilized on the platform.Part or all of these databases may be stored on remote servers or on theuser's local device, depending on the configuration of the software andother factors such as frequency of access by user, and speed of dataaccess required.

FIG. 3 shows a block diagram of Artificial Intelligence Modelsfunctionality: AI configuration 15, content tagging 16, ArtificialIntelligence Database Content 101 from the Artificial IntelligenceDatabase 100 and Artificial Intelligence Models API 17. AI configuration15 sets the general configuration options sending content and receivingpredictions from Artificial Intelligence Models. These configurationsinclude but are not limited to: human-generated context, meta parametersfor AI generated content, user profiles, processing content (both human-and AI-generated), and applying meta tags relating to the subject, toneand structure of the content. The platform owners may update theseconfigurations from time to time to optimize the performance of theartificial intelligence algorithm(s) in the Artificial IntelligenceModels 17.

The type of artificial intelligence used in this system is utilized forlanguage tasks in natural language processing, such as classification,part-of-speech tagging and text generation. Specifically, when a set ofwords or a phrase is sent to the AI API, one or more ArtificialIntelligence Models will return the most appropriate set of words orphrases in response to what is sent relative to the configurations setin AI configuration 15. In this way, the AI can generate sentences that,in context, mimic a normal human conversation. This AI generated contentis constantly tagged, categorized and saved. The present system usesthis natural language capability to generate conversation content andresponses that are presented in the intelligent keyboard. The systemfurther uses AI in content tagging 16 to tag keyboard phrases withvarious keywords that allow the system to present the most effectivephrases for a given context on a user keyboard.

Artificial Intelligence Models API 17 provides an API connection for theplatform to communicate with Artificial Intelligence Models 3.Artificial Intelligence Models API 17 receives specific configurationsand content. They return generated text, classifications, tags and othercontent. For example, if “How are you?” is sent to the ArtificialIntelligence Models API, it might respond “I am doing well, thank you.”The Artificial Intelligence Models use content to optimize such naturallanguage responses so that they seem as close to human conversation aspossible. The intelligent keyboard uses such natural language AIresponses to generate phrases for the keyboard.

Generally an application programming interface (API) is queried bysending data structured in a specific format to the API. Upon receipt ofsuch an appropriately formed API request, an API will process therequest and return data as an output. Content received by the ArtificialIntelligence Models API can include configuration data that is needed byArtificial Intelligence Models 3 to generate a response, includingdialogue history, profile data, and other data used by the ArtificialIntelligence Models 3 to generate predictions. Predictions can take theform of: 1) classifications, 2) text responses such as single words,phrases, sentences or paragraphs, or 3) vectors, tensors and othermathematical objects.

Message data stored in artificial intelligence models 3 is stored instructured databases well known in the art. These structured databasesallow easy search, location and access to message data utilized on theplatform. Part or all of these databases may be stored on remote serversor on the user's local device, depending on the configuration of thesoftware and other factors such as frequency of access by user, andspeed of data access required.

FIG. 4 shows a detailed view of integrations 4. Integrations 4 assiststhe system in learning the user's language style by analyzing the user'sactual use of language on their mobile device. In the preferredembodiment, the mobile device is an Apple iOS device (iPhone or iPad)but the disclosed system and method could be used on any type of mobiledevice, particularly those running Google's Android mobile operatingsystem. The system collects the user's content from applications andintegrations on their mobile phone. The system takes such content,particularly conversation style and content, and processes it to assistthe system in mimicking the user's natural language style.

Content scraping 18 includes the code and logic to collect and processcontent from the user's mobile device. Content scraping 18 is designedto take collected content from various different applications andintegrations, then structure and tag the content in a consistent mannerso it can be utilized across the intelligent keyboard application. Thelogic in content scraping 18 is developed with the specificapplications/integrations disclosed in this preferred embodiment butcould be extended to include nearly any application or integration thatis added to the intelligent keyboard product in the future.

Email integration 19 allows the system to collect conversation from theuser's email application to determine their language style. Such emailapplications include the native iOS mail application as well as otherthird-party email applications such as Gmail. Email is an excellentlocation to collect data about a user's conversational style andcontent, so it is a primary data source for the intelligent keyboardapplication. While email tends to be longer form conversation, iMessageor SMS tends to show a user's conversational style for shorter formconversation. For this purpose, iMessage/SMS integration 20 collectsconversational data from the user's Apple iMessage and/or text messageaccounts. This conversational data is vitally important for theintelligent keyboard application because it reveals the user's style andcontent for shorter form content.

Calendar 21, maps 22, search 23 and contacts 24 collect data from thecalendar app, map app, search engines and contacts applicationsrespectively. These apps provide useful structural data to enhance thesystem's understanding of the user's conversational style and content,but also location data, search history and frequent contacts. In thepreferred embodiment, the intelligent keyboard is able to use theenhanced context provided by calendar 21, maps 22, search 23 andcontacts 24 to add events to a user's preferred calendar applicationwithout leaving the intelligent keyboard.

Third-party apps 25 allows the system to collect data from specificthird-party apps such as Yelp, Foursquare, Opentable, Calendly,Instagram, or Facebook to provide hyper specific content,recommendations, opportunities or offers relevant to the user. While thepreferred embodiment of the disclosed invention includes integrationswith these third-party apps, many other could be included and areconsistent with the invention disclosed here.

Message data stored in integrations 4 is stored in structured databaseswell known in the art. These structured databases allow easy search,location and access to message data utilized on the platform. Part orall of these databases may be stored on remote servers or on the user'slocal device, depending on the configuration of the software and otherfactors such as frequency of access by user, and speed of data accessrequired.

FIG. 5 shows a detailed block diagram of web content 5. Similarly tointegrations 4, the purpose of web content 5 is to collectconversational information from major websites using publicly availableAPIs. While integrations 4 is focused on the specific user'sconversational style and content, web content 5 focuses more broadly ongeneral conversational content and style utilized by the general publicon key websites. Similarly to integrations 4, this content is collected(scraped) from public websites, then consistently tagged and categorizedso that it can be utilized in the intelligent keyboard application.

Content scraping 26 is a code block designed to capture, process and tagcontent collected via public API from key websites. The key function isto capture unstructured content data, then process it into a structureddataset that can be utilized to populate the intelligent keyboard withuseful content for given user contexts. In the preferred embodiment,this functionality is optimized for sites like Reddit 27, Twitter 28 andInstagram 29, but also includes other web content 30 and third-partyapps 31. Many websites with or without public APIs are envisioned by thepresent invention. Reddit, Twitter and Instagram all support public APIsthat allow the system to make structured data requests of thoseplatforms so that conversational and other data can be captured andprocessed for the intelligent keyboard product. Web content 5 isconnected to the internet 6. As described in relation to other messagedata, web content 5 is stored in databases well known in the art.

FIG. 6 is a detailed block diagram of API/App Servers 7. This codefunctions to control the servers both for the mobile and webapplications as well as provide API support for the various API requestsmade by the platform to public websites. iOS App/Keyboard server 32provides server support for all the user iOS applications and extendedkeyboards. These server functions include sending and receiving data,storing new information in the database and perhaps most importantlydistributing server process/computing across many servers on theinternet. These servers also provide caching functionality so that thelatest data set is stored at a variety of server locations across theinternet and various geographies. This provides fast and reliable accessfor all users. Web app server 34 and database server 33 provide suchserver functionality for the web app and the database respectively. Thesystem API server provides a cached version of API accessed content sothat public APIs are not accessed too frequently. In many cases, thesepublic APIs are not robust enough to be accessed on the order ofmagnitude necessary to support a mobile application.

FIG. 7 presents a block diagram of iOS app 8. The iOS app 8 user canbuild a specific user profile for their intelligent keyboard applicationin user profile 36. This includes typical information such as name,email address, phone number, photo, gender, sex, age, hobbies,interests, and education, including preferred conversational voice,tone, slang or other differentiators unique to their personalvocabulary. In addition to typical identifying information in the userprofile, content created by the user with particular conversationalwords, responses and phrases can be stored as “favorites” or “bookmarks”in their user profile. In addition to the user profile assembled by theuser, the system monitors the type of information the user engages with,the user's conversational tone and content and their specific responsesin particular contexts. In this application, the term context means thecomputer application or software where the intelligent keyboard isdeployed and the user is attempting to send a message or displaycontent, such as email, texting/iMessage, calendar, dating applications,messaging apps such as Slack or another location where a user is usingthe intelligent keyboard to insert messages. As the user continues touse the intelligent keyboard, the system builds this user profile basedon user behavior to improve the function and content predictioncapability of the system. The system further attempts to match users toother similar users based on the similarity of their user profile. Whenuser A has a high match rating with another similar user B, the systemmay serve content preferred by user A to user B and vice versa.

Activity tracking 37 monitors the activity of the user to build astronger profile of the user. This information is used to build, improveand optimize the user profile described above. Activity tracking 37specifically tracks the type of content engaged with by the user and inwhat contexts. Activity tracking 37 tracks the following interactions:which Categories and Intents are most and least used by a user, whenusers are most or least active during the day and week, how often a useraccesses the intelligent keyboard during a period of time, engagementpatterns over time including peaks and troughs throughout the year, andvarious internal improvements, such as the effect on user engagement ofreleasing new features or device notifications. This allows the systemto more accurately predict the conversational phrases preferred by theuser, but also to display additional equivalent and previouslyunused/under used, opening and response options. Thus activity tracking37 can be utilized to build the behavior criteria utilized by theplatform to suggest content. Configuration block 38 allows the user tocontrol key features of the intelligent keyboard including keyboardactivation, notifications and keyboard content including favorites,openers, banter, connect, disconnects and key questions. The intelligentkeyboard configuration options are discussed in more detail in FIG. 12.

FIG. 8 shows a screenshot of keyboard extension 11. Text input window 39is the standard text input window from Apple iOS operating system forinputting text in a message or other text input fields. While thepreferred embodiment is shown in reference to iOS, text input window 39could be any text input window from any operating system, mobile orotherwise. Categories 40 shows the main categories of intelligent textavailable in the platform. In this view, the categories shown are:favorites, openers, banter and connect, but the preferred embodimentanticipates many other categories that are consistent with the inventiondisclosed including others like disconnect and “the 36 Q's.” Thesecategories organize the intelligent keyboard content into high levelcategories that assist the user in identifying content appropriate forthe conversation type in which they are engaging.

Keyboard toggle 41 allows the user to toggle between keyboard types iniOS, including the intelligent keyboard, standard keyboard and otherenabled keyboards. Intelligent keyboard content 42 is a listing of thesuggested content for a specific category 40. The user will tap one ofthese content bubbles 45 to populate the text input window 39 with wordsand phrases. Help button 43 provides conversational guidance from theintelligent keyboard. Back button 44 inputs the most recently viewedcontent into the text input window 39 in reverse chronological order.

FIG. 9 shows a block diagram of web app 9. Web app 9 is anadministrative dashboard available only to the platform owners (notusers) that allows editing and releasing content and settingconfigurations. Platform configuration 46 contains the keyconfigurations for Artificial Intelligence Models and platform content,engagement limits, feature enabling or disabling, and notifications.Content release 47 allows the editing of existing content and creationof new content by platform owners. The block further allows a controlled“push” of new content to all the servers for delivery to platform users.Lastly database update 48 controls the orderly update of the keydatabases as shown in FIG. 10 based on new content, new configurations,new integrations or any new functionality that requires the update ofthe databases and/or database configurations.

FIG. 10 shows detail of application database 10. Live keyboard content49 contains AI generated content, user generated content and platformgenerated content. Live keyboard content 49 has been ranked by thesystem by popularity and tagged appropriately to be fetched and servedto users in particular keyboard contexts and categories. The database isavailable globally via the internet so that access to mobile users isfast regardless of their physical location. The contents of the livekeyboard content 49 database are managed by web app 9 and by the otherfunctions of the system. Application database 10 also stores web/scrapedcontent 51 that's gathered from web content 5 and integrations 4. Lastlyapplication database 10 stores all generated AI content 52. This iscontent generated by Artificial Intelligence Models.

FIG. 11 shows the details of the artificial intelligence database 100.Information stored in artificial intelligence database 100 is used tocreate, manage, train, deploy and maintain artificial intelligencemodels 3. User dialogue history 102 stores user conversations from theuser of the specific instance of the intelligent keyboard. Curateddatasets 103 are conversations that have been created by users or comefrom third-party sources, both of which have been edited by a humanreviewer, usually for the purpose of processing them into trainingdatasets 104. These curated data sets 103 are examples, selected by ahuman reviewer, that suit particular intents or conversation types.Training datasets 104 are curated example datasets that have beenprepared for usage in training/fine-tuning artificial intelligencemodels 3 using machine learning. These training datasets 104 may besubsets or supersets of curated datasets 103 and are assembled both byhuman reviewers and modified, updated or refined by the artificialintelligence models 3. Profile data 105 is information about the user oruser of the intelligent keyboard as well as data collected about thepeople to whom users are speaking. Profile data 105 may be incorporatedinto training datasets 104 to train and/or fine-tune artificialintelligence models 3 using machine learning. Profile data 105 maycontain data from local user profile 36 and application database 10 suchas, user profile 50 or profiles of people that users have spoken,including information acquired from third-party data providers. AIWeb/Scraped Content 106 in the Artificial Intelligence Database 106 isany information relevant to building, evaluating or training/fine-tuningartificial intelligence Mmodels 3 obtained from the internet, includingcontent collected in web content model 6 as described related to FIG. 5,specifically derived from Reddit, Instagram, Twitter as well as otherthird party apps. Each model in artificial intelligence models 3 hasinformation about its architecture, parameters, performance, deployment,usage history, training/fine-tuning history, version and other detailsstored in model metadata 107. Miscellaneous data for the maintenance,deployment, use, training/fine-tuning of artificial intelligence models3 is contained in other AI data 108.

FIG. 12 shows screenshots of the various configuration screens of iOSapp 8. Settings screen 53 allows the user to activate the intelligentkeyboard, turn on/off notifications, get help and watch tutorials.Keyboard screen 54 allows the user to access categorized content such asfavorites, openers, banter, connect, disconnect, “the 36 q's” and othercategorized content. Favorites screen 55 allows the user to manage andedit their favorite content for the intelligent keyboard.

FIG. 13 shows various screenshots of the actual live intelligentkeyboard. Initial screen 55 shows the intelligent keyboard as it isgenerating keyboard content appropriate for the context, i.e. theapplication, text, email, etc. Category screen 56 shows the screen wherethe user has selected the opener category. Type screen 57 shows the“curious” Intent is ready to make a request for AI generated contentfrom the API. Type screen 58 shows “banter” conversation type selected.Populate screen 59 shows the selected content populating the messagewindow. Lastly favorites screen 60 shows the user's favorite keyboardcontent.

The intelligent keyboard has two modes: 1) Pro mode and 2) AI mode. InPro mode, the keyboard content is written for the platform owners byexperts in platform generated content 12 and stored in applicationdatabase 10. In AI mode, all keyboard content is generated by artificialintelligence models 3. FIG. 13 outlines the user flow for Pro mode andFIG. 14 shows the user flow for AI mode.

FIG. 14 shows screenshots of the intelligent keyboard applicationproviding phrase suggestions based on various opening words. In step 79,the intelligent keyboard is in its opening state. The word “NATURE” isselected in step 80. At this point the intelligent keyboard beginsgenerating text in the text box. Step 81 shows the fully generated textfor “NATURE” plus the ability to select additional words for a newphrase. Step 82 shows the intelligent keyboard generating a phrasestarting with the word “DOG.” In this view, the phrase beginning to begenerated in the text box is visible. Step 83 shows the fully generatedsuggested phrase for “DOG” plus other word selection options.

In FIG. 15, the user is selecting Pro mode for the intelligent keyboard.The user enables intelligent keyboard in iOS or another mobile operatingsystem in step 61. When the user is inputting text in the keyboard oftheir mobile device, say in a text message, email or application, theyhave the option of switching to the intelligent keyboard in step 62. Atthis step, any text already typed in the text content box on the mobiledevice continues to be displayed in the text content box so that it canbe added to the intelligent keyboard if the user so chooses.

Once the intelligent keyboard is activated, the user chooses thekeyboard mode: Pro mode or AI mode. In step 63, the user selects Promode. In step 71, the user could select AI mode, which is shown indetail in FIG. 14. The user selects the category of content in 64. Thecategories are described earlier in this document but include Favorites,Advice, Openers, Banter, Connect/Disconnect and others. The keyboarddisplays the content for the selected category in step 65. The contentloaded is determined, in part, by content metadata related to thecontext (i.e. text, email, app, etc.) checked in step 69, described inmore detail below. After the category is selected, the keyboard displaysthe selected content for that category in step 65. In the next step 66,the user has the option of tapping an intent to display further relatedcontent, which is then displayed by intent. Intents include curious,ridiculous, flirty, dog, nature, challenge, basic, date at home andtoday. The user has the option to tap a chosen piece of content and addit in the text box in step 67. Content is sent in step 68.

While the user is selecting content in the above steps, the intelligentkeyboard is monitoring the user's context, i.e. the location thekeyboard is used, such as iMessage/SMS/text, email, dating apps, andothers. The intelligent keyboard is also monitoring the keyboard contenttapped, selected or sent by the user (user interaction). Thisinformation is passed to the system to optimize the content presented tothe present user as well as other users of the intelligent keyboard.This first occurs at step 62 when the intelligent keyboard is enabled.At this step, all known configurations for the intelligent keyboard areloaded. These configurations are stored on the local user application 8,the servers 7 and application database 10. These configurations areupdated in real time based on utilization of the intelligent keyboard bythe present user and all users of the platform across the internet.Further, as a user interacts with content category step 65, intent step66, text box step 67 and send step 68, the platform tracks thisinteraction and sends to ranking algorithm 14 and activity tracking 37.As this data is tracked, it is passed to database 10, web app 9 and tothe system's proprietary algorithm 74. The activity data is processedand used to further optimize the content displayed to users in specificcontexts, categories and intents. The system also monitors if any of thestored metadata is changed/updated/affected in step 69. These updates tometadata are generally due to user activity such as storing a favoriteor interacting with content. These changes are routed through the systemelements such as the user's local application storage 8, server 7,database 10, proprietary algorithm 74 and web application 9.

FIG. 16 shows the user selecting AI mode for the intelligent keyboard.Many of the steps are the same or overlap as with the Pro mode optionand are described in detail in the discussion of FIG. 13. The userchooses AI mode in step 72. AI mode means that the artificialintelligence feature choses all the content presented to the user in theintelligent keyboard. A full discussion of artificial intelligence 3 ispresented in relation to FIGS. 3 and 11 and accompanying discussion. Asin Pro mode the user chooses the category in step 75. Content for thecategory is displayed in step 76. The user may select content at thisstep or select an intent in step 77. Text is copied in the text box in78 and is sent by the user in step 69. As with Pro mode, the systemmonitors user behavior at each step of the process, including intent,category and tone, specifically monitoring user interactions andfavorites of content. Additionally, at each stage of the process wherenew content is displayed for the user (category 75 and intent 77), thesystem sends information to artificial intelligence models 3 whichgenerate AI content. These AI fetches are done based on system settingsand data stored at server 7, database 10, artificial intelligencedatabase 100, user application 8, web application 9 and proprietaryalgorithm 74.

FIG. 17 shows a system implementation of the intelligent keyboard system1 as described in the present disclosure. User device 200 could be anysuitable computer system with a keyboard capable of running the softwareassociated with intelligent keyboard 1, but for purposes of thisdisclosure a mobile phone such as an iPhone running Apple's iOSoperating system or Android devices running Google's Android operatingsystem are discussed. System hardware for such a mobile device includesmicroprocessor 201. Microprocessor 201 can any low power mobileoptimized microprocessor known in the art, such as those manufactured byApple, ARM, Intel and AMD. While those are suitable examples, anymicroprocessor capable of processing digital instructions could beutilized. System memory and storage 202 encompasses both non-volatilememory (that doesn't require a power to maintain memory) such as Flashmemory that stores the operating system and applications as well asmemory that's accessed by the microprocessor during execution of systemoperations. These memories are well known in the art. Network/wirelesscommunication module 203 connects the device to the internet, eitherthrough any wired connection to the internet or any suitable wirelessconnection such as WiFi or 3G/4G/5G wireless connections through mobilecarriers. This module provides connection to network 209 which, in thisembodiment, is the internet. GPS/location module 204 provides locationdata generally using the global positioning system to pinpoint theuser's location. Display/touchscreen controller 205 sends signals to themobile device LCD or OLED (or other suitable technology) screen torender images and text on the screen. This controller further readssignals sent from the touchscreen relating to user interaction with thetouchscreen. These controllers are well known in the art and anysuitable one could be used, such as those in use in Apple iPhones orGoogle Android mobile devices. 10/battery/audio 206 controllerinterfaces with the mobile device battery, provides power management,input/output control for USB, Firewire, Bluetooth or other connecteddevices and the audio processor encodes and decodes digital audiosignals so that they can be played back using analog speakers.

System software typically includes operating system 207, which in thiscase is generally Apple's iOS mobile operating system or Google'sAndroid operating system. Any suitable operating system could be used,including Microsoft Window's, Apple MacOS, LINUX, Unix or any otheroperating system known in the art. Intelligent keyboard application 208is the local version of the software running on a user's device. Thisversion of the software displays the intelligent keyboard and stores theuser's preferences as discussed previously in relation to FIG. 7.

The intelligent keyboard system 1 shows the remove servers related tothe functions of the intelligent keyboard. These individual modules anddatabases have been discussed in depth in above, but this representationshows the remote nature of the server based software modules anddatabases. The software modules and databases can be executed on anysuitable server connected to the internet, but in the preferredembodiment, servers hosted on Amazon Web Services are utilized. Theintelligent keyboard application 208 communicates through network 209 toservers that host intelligent keyboard system 1. These servers furthercommunicate through network 209 with the various internet servicesdiscussed prior including Reddit 27, Twitter 28, Instagram 29, othersuitable web content 30 and 3^(rd) party apps 31.

Third party user devices 211 also connect through network 209. These areother user devices that receive communications from the user of theintelligent keyboard application. While the figure indicates that thirdparty user devices 211 are mobile phones, such devices could also bedesktop or mobile computers receiving communication.

Lastly, web store/application store 210 is connected to network 209 andthus to user device 200. In the preferred embodiment, webstore/application store 210 is an online store for downloadableapplications or other downloadable content such as the Apple App Storeor Google Play Store. While this aspect of the intention is described inrelation to these existing web store/application store 210, any suitabletype of online marketplace could be utilized. Here, the user coulddownload the intelligent keyboard application 208 or paid extensions tothe intelligent keyboard application 208. It is anticipated thatlibraries of keyboard content in particular voices could be sold in appfor purchase and download through these web store/application stores210.

Although the present invention has been described in relation to theabove disclosed preferred embodiment, many modifications in design,implementation, systems and execution are possible while stillmaintaining the novel features and advantages of the invention. Thepreferred embodiment is not meant to limit the scope of the patent inany way, and it should be given the broadest possible interpretationconsistent with the language of the disclosure on the whole.

1. An intelligent keyboard for sending suggested messages through acomputing device comprising: An intelligent keyboard application for useon a computer system and display on a computer screen, the intelligentkeyboard for use by a user to generate a message to be sent by thecomputer system, the intelligent keyboard comprising a message insertionlocation to insert the message generated by the intelligent keyboard, acategory selection window, wherein the user may select a category forthe message to be sent, an intent selection window, wherein the user mayselect an intent for the message to be sent, and a suggested messagewindow where a set of one or more suggested messages are displayed,wherein the user may select and send one of the set of suggestedmessages via the computer system; wherein the set of one or moresuggested messages is selected by a selection criteria by the computersystem from one or more message data databases comprising: a humangenerated content database, the human generated content databasecomprising message data further comprising platform generated contentgenerated by an operator of the intelligent keyboard application anduser generated content generated by all users of the intelligentkeyboard application, an integrations database, the integrationsdatabase comprising message data collected from one or more applicationslinked to the intelligent keyboard application by the user, a webcontent database, the web content database comprising message datacollected from one or more internet sites, and an artificialintelligence content database, the artificial intelligence contentdatabase comprising message data generated by artificial intelligencemodels utilizing machine learning to generate human natural languageresponses.
 2. The intelligent keyboard of claim 1 where the one or moreapplications of the integrations database are chosen from the set ofemail, maps, text messages, iMessage, search history, calendar andcontacts.
 3. The intelligent keyboard of claim 1 where the one or moreinternet sites from the web content database are chosen from the set ofReddit, Twitter and Instagram.
 4. The intelligent keyboard of claim 1where the selection criteria includes utilizing the context of themessage to be sent and a set of behavior criteria related to the user.5. A system for an intelligent keyboard for sending suggested messagescomprising: a computing device comprising a microprocessor, a memory, adisplay controller, a means for communication with a network, anoperating system and an intelligent keyboard application, theintelligent keyboard application for use by a user to generate a messageto be sent by the computer system, the intelligent keyboard comprising:a message insertion location to insert the message generated by theintelligent keyboard, a category selection window, wherein the user mayselect a category for the message to be sent, an intent selectionwindow, wherein the user may select an intent for the message to besent, an application database comprising a user profile and a localdatabase of message data, and a suggested message window where a set ofone or more suggested messages are displayed, wherein the user mayselect and send one of the set of suggested messages via the computersystem and the network, wherein the set of one or more suggestedmessages is selected by a selection criteria by the computer system fromone or more message data databases comprising: a human generated contentdatabase, the human generated content database comprising message datafurther comprising platform generated content generated by an operatorof the intelligent keyboard application and user generated contentgenerated by all users of the intelligent keyboard application, anintegrations database, the integrations database comprising message datacollected from one or more applications linked to the intelligentkeyboard application by the user, a web content database, the webcontent database comprising message data collected from one or moreinternet sites, an artificial intelligence content database, theartificial intelligence content database comprising message datagenerated by artificial intelligence models utilizing machine learningto generate human natural language responses, and the applicationdatabase, wherein the network is configured for transmitting databetween computer systems, and a remote server computer system connectedto the network, the remote server hosting the human generated contentdatabase, the integrations database, the web content database and theartificial intelligence content database.
 6. The system for anintelligent keyboard of claim 5 where the one or more applications ofthe integrations database are chosen from the set of email, maps, textmessages, iMessage, search history, calendar and contacts.
 7. The systemfor an intelligent keyboard of claim 5 where the one or more internetsites from the web content database are chosen from the set of Reddit,Twitter and Instagram.
 8. The system for an intelligent keyboard ofclaim 5 where the selection criteria includes utilizing the context ofthe message to be sent and a set of behavior criteria related to theuser.
 9. A method of generating suggested messages for sending by a userusing an intelligent keyboard application through a computer systemcomprising: displaying, on a display of the computer system anintelligent keyboard, the intelligent keyboard comprising: a messageinsertion location to insert the message generated by the intelligentkeyboard, a category selection window, wherein the user may select acategory for the message to be sent, an intent selection window, whereinthe user may select an intent for the message to be sent, and asuggested message window where a set of one or more suggested messagesare displayed, wherein the user may select and send one of the set ofsuggested messages via the computer system; generating a set of one ormore suggested messages for sending by the user, the one or moresuggested messages selected by a selection criteria by the computersystem from one or more message data databases comprising: a humangenerated content database, the human generated content databasecomprising message data further comprising platform generated contentgenerated by an operator of the intelligent keyboard application anduser generated content generated by all users of the intelligentkeyboard application, an integrations database, the integrationsdatabase comprising message data collected from one or more applicationslinked to the intelligent keyboard application by the user, a webcontent database, the web content database comprising message datacollected from one or more internet sites, and an artificialintelligence content database, the artificial intelligence contentdatabase comprising message data generated by artificial intelligencemodels utilizing machine learning to generate human natural languageresponses, displaying the set of one or more suggested messages on thedisplay, and selecting, by the user one of the suggested messages forsending by the computer system.
 10. The method of generating suggestedmessages for sending by a user using an intelligent keyboard applicationof claim 9 where the one or more applications of the integrationsdatabase are chosen from the set of email, maps, text messages,iMessage, search history, calendar and contacts.
 11. The method ofgenerating suggested messages for sending by a user using an intelligentkeyboard application of claim 9 where the one or more internet sitesfrom the web content database are chosen from the set of Reddit, Twitterand Instagram.
 12. The method of generating suggested messages forsending by a user using an intelligent keyboard application of claim 9where the selection criteria includes utilizing the context of themessage to be sent and a set of behavior criteria related to the user.